#include <iostream>
#include <unistd.h>
#include <string>
#include <signal.h>
#include <sys/types.h>
#include <cstdlib>

void handlerSig(int sig)
{
    std::cout << "获得了一个信号" << sig << std::endl;
}

int main()
{
    //调用SIGINT时，直接调用handlerSig(函数指针)
    int cnt = 0;
    signal(SIGINT, handlerSig);//自定义信号捕捉
    while(1)
    {
        std::cout << "..." << getpid() << std::endl;
        cnt++;
        if(cnt == 100000000000000)
        {
            raise(9);//向进程发送信号终止进程，但是允许进程稍后处理
        }
        if(cnt == 100000000000000000)
        abort();//向进程发送终止信号使其立刻终止
        sleep(1);
    }
    return 0;
}